// Componet/Componet.js
Component({
    /**
     * 组件的属性列表
     */
      properties: {
        api:{
            //搜索的api
            type:String,
            value:''
        },
        initcompanyName:{
            type:String,
            value:''
        },//初始化的公司名称
        params:{
            type:String,//搜索的字段
            value:''
        },
          nowText:{
              type:String,
              value:''//初始内容
          },
          selectShow:{
              type:Boolean,
              value:false
          },//初始option不显示
          arrTag:{
              type:String,
              value:''//选项提示
          },
          searchFlag:{
              //是否有搜索框
              type:Boolean,
              value:false
          },
          mustFlag:{
              //是否是必填项目
              type:Boolean,
              value:false
          }
      },
    /**
     * 组件的初始数据
     */
      data: {
        //   selectShow:false,//初始option不显示
        //   nowText:"",
          animationData:{},//右边箭头的动画
          animationDetail:{},//数据的动画
          searchText:'',//搜索的内容
          handleArray:''//模糊搜索的数组
      },
      ready(){
        this.setData({nowText:this.properties.initcompanyName});
        //   this.setData({'handleArray':this.properties.propArray})
      },
    /**
     * 组件的方法列表
     */
      methods: {
  　　　//option的显示与否
          selectToggle:function(e){
              var nowShow=this.data.selectShow;//获取当前option显示的状态
              if(!nowShow){
                this.setData({
                    selectShow: !nowShow
                })
                this.createAnimation(nowShow)
              }else{
                this.createAnimation(true)
                setTimeout(()=>{
                    this.setData({
                        selectShow: !nowShow
                    })
                },400)
              }
              
            
          },
          createAnimation(nowShow){
                 //创建动画
                 var animation = wx.createAnimation({
                    timingFunction:"ease"
                })
                var animation1 = wx.createAnimation({
                    //数据的动画
                  timingFunction:"ease"
              })
                this.animation=animation;
                this.animation1=animation1;
                if(nowShow){
                    animation.rotate(0).step();
                    animation1.opacity(0).step();
                    this.setData({
                        animationData: animation.export(),
                        animationDetail:animation1.export()
                    })
  
                }else{
                    animation.rotate(180).step();
                    
                    animation1.opacity(1).step()
                    this.setData({
                        animationData: animation.export(),
                        animationDetail:animation1.export()
                    })
                }
          },
          //设置内容
          setText:function(e){
              var nowData = this.data.handleArray;//当前option的数据是引入组件的页面传过来的，所以这里获取数据只有通过this.properties
              var nowIdx = e.target.dataset.index;//当前点击的索引
              var nowText = nowData[nowIdx].company_name;//当前点击的内容
              var selectItem=nowData[nowIdx];//当前点击项的数据
              //再次执行动画，注意这里一定，一定，一定是this.animation来使用动画
              this.setData({nowText:nowText});
              this.triggerEvent('getItem',selectItem)
            // this.triggerEvent('getSearch',selectItem.name)
              this.createAnimation(true)
                setTimeout(()=>{
                    //关闭动画执行完才隐藏
                    this.setData({
                        selectShow: false
                    })
                },400)
                
          },
          setInit(text){
              //恢复默认值
              this.setData({nowText:text});
          },
          getSearch(e){
              //获取搜索内容
              let params=this.properties.params
              this.triggerEvent('getItem',false);//输入时不显示添加按钮
              if(e.detail.value==''){
                  //空的时候置下拉数组为空
                this.getSearchData({
                    [params]:'-'
                });
            }else{
                this.getSearchData({
                    [params]:e.detail.value
                });
            }
                
                
            
              this.setData({'searchText':e.detail.value})
              this.triggerEvent('getSearch',e.detail.value)

          },
          boardheightchange(e){
              console.log(e)
          },
           getSearchData(params){//获取公司信息
            wx.request({
                url: this.properties.api,
                data: params,
                method: 'get',
                header: {
                  "content-type": "application/json"
                },
                success: res => {
                    this.setData({handleArray:res.data.data})
                },
                fail: err => {
                    console.log(err)
                }
              })
          }
      }
  })